home *** CD-ROM | disk | FTP | other *** search
/ Aminet 52 / Aminet 52 (2002)(GTI - Schatztruhe)[!][Dec 2002].iso / Aminet / dev / c / Emperor.lha / Emperor / Emperor.readme < prev    next >
Text File  |  2002-09-29  |  27KB  |  566 lines

  1. Short:    Rapid Application Development Tool for Amiga3.5+
  2. Author:   Matthias Gietzelt
  3. EMail:    shamane@exmail.de
  4. Version:  4.5
  5. Type:     dev/c
  6. Requires: OS 3.5, well-equipped Amiga, some knowledge,
  7.           Amiga Developer CD 2.1 (see below)
  8.  
  9.  
  10.         _______   __   __          ___        _______   ___      ___          ___   
  11.        /******/  /**| /**|        /***\      /******/  /***\    /***\        /***\  
  12.       /**____/  /***|/***|       /*__**\    /**____/  /*__**\  /*___*\      /*__**\ 
  13.      /**/___   /*/ |**/|*|      /*/__/*|   /**/___   /*/__/*| |*/   \*|    /*/__/*| 
  14.     /******/  /*/  |_/ |*|     /*******/  /******/  /*******/ |*|   |*|   /*******/ 
  15.    /**____/  /*/       |*|    /*______/  /**____/  /*__**__/  |*|   |*|  /*__**__/  
  16.   /**/___   /*/        |*|   /*/        /**/___   /*/  \*\    \*\___/*/ /*/  \*\    
  17.  /******/  /*/         |*|  /*/        /******/  /*/    \*\    \*****/ /*/    \*\   
  18. /______/  /_/          |_| /_/        /______/  /_/      \_\    \___/ /_/      \_\  
  19.  
  20.  
  21.                       The object-oriented programming language
  22.  
  23.                     Available at www.aminet.de ! (Drawer: dev/c)
  24.  
  25.  
  26.  
  27. Für die deutsche Version, bitte weiter unten lesen....
  28.  
  29.  
  30. ENGLISH:
  31.  
  32.  
  33. History
  34.  
  35. 2.0  - Initial release
  36. ---
  37. 2.1  - GadTools gadgets support !!
  38.      - reached to shrink programsize by coding the window-stuff by myself
  39.        instead of making it by ReActor
  40. ---
  41. 2.2  - Oops..The program crashed, when a clicktab was in a test-window.
  42.      - speed optimizations (e.g. at startup, shutdown etc.)
  43.      - defined catalog-creation
  44.      - C++-Code support
  45.      - added the macro "Preferences-Menu" for Prefs-Programs
  46.      - better & easier generated C-sourcecode
  47.      - minor bugfixes
  48. ---
  49. 2.3  - prefs-editor rewritten
  50.      - chooseable processortype for generated StormC-project
  51.      - modified programming-help
  52.      - some functionmacros rewritten
  53.      - minor bugfixes
  54. ---
  55. 3.0  - gadgets-test routine rewritten
  56.      - fixed bugs by showing tapedeck & colorwheel gadgets
  57.      - fixed problems with clicktabs & page gadgets (see "clicktabsexample")
  58.      - added function "Shutdown()" (called, when program quits)
  59.      - added progress-bar while saving
  60.      - added macrofunctions "Emperor_Set/GetGadgetAttrComplex()" (see guide for details)
  61. ---
  62. 3.1  - fixed a bug when generating source for window with colorwheel
  63.      - source is now *more* SAS/C friendly
  64.      - fixed a silly bug when copy a function from programming help into texteditor
  65.      - added online help for macrofunctions (see chapter Programming Help for details)
  66.      - added ARexx-connection to StormC (Scripts - Dir)
  67.      - added arguments by starting StormC (e.g. GoldED support for StormC)
  68.      - added loading picture
  69. ---
  70. 3.2  - added parametry of several image-gadgets (bevel, bitmap, glyph)
  71.        (see "ClicktabExample" for details)
  72.      - fixed a bug with slider and getfile-gadgets
  73.      - fixed problem with requester-body-text ["\n" (Newline) will be recognized now]
  74.      - rewritten routine for adding, moving (up and down) and removing of objects in a list
  75. ---
  76. 3.5  - showing of scroller & slider-gadgets fixed
  77.      - layout-gadget (bevelstyle & -state) doesn't switch back to previous set values anymore
  78.      - added support of finnish catalog
  79.      - added program-environment for configuration of version, program name,
  80.        stack, mem and many more
  81.      - deleting windows is possible now
  82.      - when pages were added to gadgetlist, its generation was incorrect
  83.      - added gadgethelp support - just connect a gadget to configure ! (program-environment)
  84.      - added function <Menu-Edit-Clearlist> to reset current list of objects
  85.      - label's Locale-connection works correct now
  86.      - gadgethelp for nearly every gadget
  87.      - added chooseable HookType for string-gadgets
  88.      - added some initial-configurations for texteditor-gadgets
  89.      - moving Locale-entrys is possible now
  90.      - editing the includelist is also possible now
  91.      - added new startup-picture (thanks to Janne Peräaho)
  92. ---
  93. 3.6  - Gradientsliders horiz/vert orientation works correct now
  94.      - some global variables problems fixed
  95.      - problems with node-array fixed
  96.      - special positions/sizes for OS 2.0 windows work now
  97.      - chooseable smallfont for large lists
  98.      - fixed crash when moving a test-window
  99.      - modifyable library-integration for your project
  100.      - fixed bug in installer-script (doesn't notice, if an OS higher than 3.5 was installed)
  101.      - added interconnection maps
  102.      - generating source based on AmigaOS 2.0, AmigaOS 3.5+ or mixed code
  103. ---
  104. 4.0  - DONE ! the whole code is rewritten and structured ! only 4 MBytes of systemmemory
  105.        is needed !
  106.      - the programflow maybe changed a bit to a better, because also all low-level
  107.        functions were rewritten
  108.      - the look has changed a bit
  109.      - menu is more complex and professional
  110.      - expanded GadTools-handling (with RightMouseButton)
  111. ---
  112. 4.1  - added french catalog (written by Olivier Martin -- thank you !)
  113.      - added translations for predefined menus and requests
  114.      - added attributes for texteditor-, speedbar- and space-gadget
  115.      - new special requester-kind (in Reaction-style)
  116.      - ARexx-script changed/fixed problem while transfering projects
  117.      - removed fix-positions for attribute-windows
  118.      - fixed problem with preview-menu (no wrong additional menuitems anymore)
  119.      - added array for speedbar buttons
  120.      - fixed problems with arrays
  121.      - enlarged edges around GadTools-gadgets for resizing
  122.      - path to includes and libs configurable
  123.      - layout of mainwindow changed (no overlapping gadgets anymore)
  124.      - added requester, if choosing menuitem "New"
  125.      - fixed a bug in menuitem "New"
  126.      - fixed a bug in menuitem "Delete"
  127.      - bugs within generated code were fixed
  128.      - chooseable generation of macrofunctions
  129.      - generated code much smaller while leaving out unused macrofunctions and restructuring it
  130.        (ca. 40 % smaller)
  131.      - chooseable initial opened window for your project
  132.      - fixed bug in source, when there was just one gadget in a list
  133.      - added possibility to create a directory containing the current project
  134.      - bug while opening old projects containing a slider fixed
  135.      - chooseable locale-datafile creation
  136.      - chooseable storm-projectfile creation
  137.      - texteditor changes are recognized before saving
  138.      - saving of strings containing a linefeed ('\n') is no problem anymore
  139.      - opened amigaguide.library because of some initialization-bugs
  140. ---
  141. 4.2  - printing objecttable is available now
  142.      - cut/copy/paste for Gadgets works now
  143.      - no conflicts with projects containing more than one window
  144.      - problems with projects containing more than one window in generated source fixed
  145.      - rewritten and shortened function "inttostring" in generated code
  146.      - Reaction-gadgetlist and menulist is truely hierarchical now (supports hiding and showing childrens)
  147.      - added support for languages bosanski, català, czech, polski, russian, slovensko, srpski and türkçe
  148.      - added translations to all predefined menus for languages mentioned above
  149.      - translated strings for predefined menus, requests, ASL-requests etc. to supported languages
  150.      - added expanded predefined menu "preferences"
  151.      - online-help in all programparts and windows
  152.      - completly revised guide-files
  153.      - Screens array with preview
  154.      - new windowattribute: BackFill (file)
  155.      - new windowattribute: Screen
  156.      - new bitmapattribute: Screen
  157.      - new requestattribute: Screen
  158.      - reworked window-attributes window
  159.      - arrays on just one attributewindow
  160.      - problems with InterConnection Maps fixed
  161.      - new programenvironment-attribute for initial opened screen
  162.      - added macrofunctions for opening/closing screens
  163.      - choosable taskpriority for project
  164.      - *.h-file including in stormproject-file
  165.      - in stormproject-file object-drawer as "StormC:Objects" (now really just one object-drawer)
  166.      - hand over function to texteditor is chooseable in preferences
  167.      - deleting objects with chooseable appearing request
  168.      - template-project as a replace for builtin objects
  169.      - lowlevel problems (while ICMap-generating in source and in programming-help) fixed
  170.      - while saving appearing problems with appended "*.project" fixed
  171.      - problems while saving into drawers fixed
  172.      - added button "Edit" in mainwindow for opening/closing attributewindow
  173.      - button "Add" is disabled for wrong access on Reaction-page
  174.      - doubleclick middle opens attributewindow
  175.      - library attributewindow works correct now
  176.      - variable attributewindow has a new behaviour in accepting values
  177.      - Catalog- and VisualInfo-variables configurable
  178.      - buttons in mainwindow don't stay selected
  179.      - "Preview"- and "Edit"-button with brackets
  180.      - no wrong serial numbers behind predefined names anymore
  181.      - no need for "Emperor:"-assign anymore
  182.      - problems with startup-progressbar fixed
  183.      - progresswindow for loading projects
  184.      - implemented memorysaving
  185.      - preview of getfile-gadgets rewritten (now it shows its content)
  186.      - new mousebutton events for: - doubleclick left & middle
  187.                                    - left, middle, right in each case with up & down
  188.      - new attributes in Get/SetGadgetAttr(): - GETFILE_FullFile
  189.                                               - GETFONT_TextAttr
  190.                                               - GETSCREENMODE_DisplayID
  191.                                               - and TDECK_Tape
  192. ---
  193. 4.3  - Reaction based popupmenus
  194.      - bug in GadgetHelp within layout-attributwindow fixed
  195.      - array problems fixed
  196.      - notice catalogIDs at adding arraynodes now
  197.      - deals with conflicts with rounding of HSMathLibs
  198.      - Workbench-start conflicts with initial projectdrawer fixed
  199.      - remembers all windowpositions
  200.      - new, overloaded inttostring-function
  201.      - choose each component while open
  202.      - when merging projects, windows were not store anywere in memory
  203.      - supports CyberGraphX and Picasso96 screens
  204.      - minor bugfixes
  205. ---
  206. 4.5  - MultiMenu; for every window an own pulldown-menu
  207.      - description of window-depending lists (gadgets and menu)
  208.      - checking of projects for logical errors
  209.      - Drag'n'Drop of objects implemented
  210.      - full StormC v4-support
  211.      - category ToolTypes added
  212.      - generating of install-scripts implemented
  213.      - mainwindow can be shown in small mode
  214.      - problems with array-window fixed
  215.      - all lists are controllable by keyboard
  216.      - expanded configuration-possiblities
  217.      - input message handle as hierarchical list
  218.      - own screen for Emperor chooseable
  219.      - problems with previewwindow fixed
  220.      - project-open-routines optimized
  221.      - bugs in generated source fixed
  222.      - progress-bars reworked
  223.      - some macrofunctions optimized
  224.      - generated source optimized
  225.      - icons for all files createable
  226.      - full AmigaOS3.9-support
  227.      - expanded functions in attribute-windows
  228.      - improved programming-help
  229.      - new texteditor-functions
  230.      - improved online-help
  231.      - expanded GadgetHelp
  232.      - initializing-functions optimized
  233.      - small bugs fixed
  234.  
  235.  
  236. Introduction
  237.  
  238.  
  239. Emperor is a very powerful software to write GUI-based programs. There are C/C++-
  240. sourcecodes that are generated by Emperor. They can be easily translated by an
  241. external C/C++-Compiler.
  242. In the Amiga-sphere there are only less applications like CanDo, Storm-Wizard.
  243. Under Windooze you have VisualC as equivalent software.
  244.  
  245. I wanted to make parameting of the Graphical User Interface (GUI) and its macro-elements
  246. as easy as possible.
  247. Following standard-GUI-elements are implemented:
  248.  * Screens
  249.  * Windows
  250.  * OS2.0 gadgets (GadTools)
  251.  * OS3.5 gadgets (Reaction)
  252.  * Menus
  253.  * Popup-menus
  254.  * Requests
  255.  * ASL-requests
  256.  * Locale-catalogs
  257.  
  258. Following NON-GUI-elements are implemented:
  259.  * Functionmacros, which makes programming under OS3.5+ more easily
  260.  * Install-scripts
  261.  * ToolTypes
  262.  * Includes
  263.  * Libraries
  264.  * declare variables
  265.  * InterConnection maps between gadgets
  266.  * create list-arrays for gadgets
  267.  
  268. With Emperor you are generating a complete C/C++-sourcecode, which only must be
  269. compiled by an external compiler (e.g. StormC from the developer CD2.1).
  270.  
  271. Aim of this program is to assure software developer to create their programs (its sourcecode)
  272. by Emperor, because the making of software (opening of windows, file- and fontrequests,
  273. menus etc.) is often equal and must not longer copied by programmers from other sourcecodes.
  274. Emperor decrees about one or more macros for every GUI-element. Like the menus:
  275. here you must, for creating the complete Project-menu (open, close, save, print etc.) and its
  276. translation, (in Locale-".catalog"-file) only select the corresponding entry in the list.
  277. This is also possible with requests e.g. by making a QuitRequest. These are called in
  278. the own sourcecode as function "REQUESTNAME();".
  279.  
  280. But the program should also be for amigans, who never programmed before,
  281. and bade an easy way in the programming of AmigaOS-GUIs.
  282.  
  283.  
  284. Systemrequirements
  285.  
  286.   - an Amiga ;-)
  287.   - Memory at least 4 MByte; recommended 16 MByte or more
  288.   - Workbench version 3.5 or higher
  289.   - Processor at least 68020; recommended 68060
  290.   - Amiga Developer CD 2.1 of the HAAGE & Partner GmbH
  291.   - C/C++-Compiler (from the developer CD "ADCD_2.1:Contributions/Haage_&_Partner/StormC/")
  292.   - CatComp (from the developer CD "ADCD_2.1:NDK/NDK_3.5/Tools/CatComp")
  293.  
  294.  
  295. DEUTSCH:
  296.  
  297.  
  298. Die Geschichte
  299.  
  300. 2.0  - Erste Veröffentlichung
  301. ---
  302. 2.1  - AmigaOS 2.0 Gadgets hinzugefügt !!
  303.        (GadTools-Gadgets sind nun verfügbar !)
  304.      - Programm ist durch Code-Umsetzung von ReActor nach eigenem Code geschrumpft.
  305. ---
  306. 2.2  - Programmabsturz, wenn Clicktab-Gadgets in einem Test-Fenster waren.
  307.      - Geschwindigkeitsoptimierungen (z.B. beim Start, Ende etc.)
  308.      - definierte Catalog-Erstellung
  309.      - Makro "Preferences-Menü" für Einstellungs-Programme
  310.      - C++-Quelltext Unterstützung
  311.      - besserer & einfacherer generierter C-Quelltext
  312.      - minimale Fehler behoben
  313. ---
  314. 2.3  - Prefs-Editor überarbeitet
  315.      - wählbarer Prozessortyp für generierten StormC-Projekt
  316.      - modifizierte Programmierhilfe
  317.      - diverse Funktionsmakros überarbeitet
  318.      - minimale Fehler behoben
  319. ---
  320. 3.0  - Gadget-Test Routine überarbeitet
  321.      - Fehler beim Anzeigen von Tapedeck & Colorwheel Gadgets behoben
  322.      - Probleme mit Clicktabs & Page Gadgets behoben (siehe "clicktabsexample")
  323.      - Funktion "Shutdown()" hinzugefügt (Aufruf, bei Programmende)
  324.      - Fortschrittsanzeige während des Speicherns
  325.      - Makrofunktion "Emperor_Set/GetGadgetAttrComplex()" hinzugefügt
  326.        (siehe Emperor.guide)
  327. ---
  328. 3.1  - Fehler beim Quelltextgenerieren mit ColorWheels behoben
  329.      - Quelltext ist nun SAS/C freundlich*er*
  330.      - Fehler beim Kopieren einer Funktion von der Programmierhilfe in den Texteditor behoben
  331.      - Online Hilfe für Makrofunktionen hinzugefügt (siehe Kapitel Programmierhilfe)
  332.      - ARexx-Verbindung zu StormC (Scripts - Verzeichnis)
  333.      - Argumente beim Starten von StormC hinzugefügt (z.B. GoldED support für StormC)
  334.      - Ladebild hinzugefügt
  335. ---
  336. 3.2  - diverse Image-Gadgets (Bevel, Bitmap, Glyph) hinzugefügt
  337.        (siehe "ClicktabExample" für Einzelheiten)
  338.      - Fehler mit Slider und Getfile-Gadgets behoben
  339.      - Problem mit dem Requester-Body-Text behoben ["\n" (Newline) wird nun berücksichtigt]
  340.      - Routine für hinzufügen, verschieben (hoch und runter) und löschen von Objekten
  341.        in den Listen überarbeitet
  342. ---
  343. 3.5  - Anzeigen des Scroller & Slider-Gadgets ist überarbeitet worden
  344.      - Layout-Gadget (BevelStyle & -State) springt nicht mehr zu zuvor eingestellten
  345.        Werten zurück
  346.      - Finnischen Katalog hinzugefügt
  347.      - Programmumgebung zur Konfiguration von Version, Programmnamen, Stack, Speicher
  348.        und vielem, vielem mehr hinzugefügt
  349.      - löschen von Fenstern ist nun möglich
  350.      - wenn Pages hinzugefügt wurden, waren deren Generationen inkorrekt
  351.      - GadgetHelp hinzugefügt - einfach ein Gadget verbinden, um die GadgetHelp zu
  352.        konfigurieren ! (Programmumgebung)
  353.      - Funktion <Menü-Bearbeiten-Liste löschen> für das Zurücksetzen der aktiven Liste von
  354.        Objekten hinzugefügt
  355.      - Label's Locale-Verbindung arbeitet nun korrekt
  356.      - GadgetHelp für beinahe jedes Gadget
  357.      - wählbarer HookType für String-Gadgets
  358.      - diverse Initial-konfigurationen für Texteditor-Gadgets hinzugefügt
  359.      - verschieben von Locale-Einträgen ist nun möglich
  360.      - editieren der Includeliste ist nun möglich
  361.      - neues Startupbild hinzugefügt (Dank an Janne Peräaho)
  362. ---
  363. 3.6  - Gradientsliders horiz/vert Ausrichtung arbeitet nun korrekt
  364.      - einige Probleme mit globalen Variablen behoben
  365.      - Probleme mit Node-Arrays behoben
  366.      - spezielle Positionen/Größen für OS 2.0 Fenster arbeiten nun korrekt
  367.      - wählbarer Smallfont für komplexe Listen (Texteditor/Programmierhilfe)
  368.      - Fehler behoben beim verschieben vom Vorschaufenster
  369.      - veränderbare Library-Integration für das eigene Projekt
  370.      - Fehler behoben im Installer-Skript (arbeitet jetzt mit OS-Versionen >3.5 zusammen)
  371.      - Interconnection Maps hinzugefügt (Verknüpfung von Gadgets)
  372.      - Quelltextgenerierung auf Basis von AmigaOS 2.0, AmigaOS 3.5+ oder gemischt
  373. ---
  374. 4.0  - GESCHAFFT ! der gesamte Quelltext ist neugeschrieben, strukturiert und überarbeitet !!
  375.        nur noch 4 MBytes Systemspeicher sind für den Start von Emperor notwendig !
  376.      - der Programmfluss hat sich teilweise geändert, weil auch alle low-level Funktionen
  377.        neugeschrieben wurden.
  378.      - neuer Look
  379.      - komplexeres und professionelleres Menü
  380.      - erweitertes GadTools-handling (mit RechtemMausButton)
  381. ---
  382. 4.1  - französischen Katalog hinzugefügt (geschrieben von Olivier Martin -- besten Dank !)
  383.      - Übersetzungen für vorgefertigte Menüs und Gadgets hinzugefügt
  384.      - Attribute für Texteditor-, Speedbar- und Space-gadget hinzugefügt
  385.      - neuer spezieller Requestertyp (im Reaction-Stil)
  386.      - ARexx-Skript verändert/Probleme während des Transfers von Projekten beseitigt
  387.      - fixe Positionen für Attribut-Fenster beseitigt
  388.      - Problem mit Vorschau-Menü behoben
  389.      - Array für Speedbar-Buttons hinzugefügt
  390.      - Probleme mit Arrays beseitigt
  391.      - Justierungsflächen um GadTools-Gadgets vergrößert
  392.      - Pfad zu Includes und Libs konfigurierbar
  393.      - Layout des Hauptfensters verändert (keine überlappenden Gadgets mehr)
  394.      - Requester hinzugefügt, wenn Menüpunkt "Neu" gewählt wird
  395.      - Fehler im Menüpunkt "Neu" behoben
  396.      - Fehler im Menüpunkt "Löschen" behoben
  397.      - wählbare Makrofunktionsgenerierung
  398.      - generierter Quelltext durch Herauslassen unbenutzter Makrofunktionen und Restrukturierung
  399.        wesentlich kleiner (ca. 40 %)
  400.      - initial geöffnetes Fenster für eigenes Projekt wählbar
  401.      - Fehler im generierten Quelltext bei nur einem Gadget beseitigt
  402.      - spezifische Projekt-Verzeichnisse erstellbar
  403.      - Fehler während des Öffnens alter Projekte, die einen Slider enthielten, behoben
  404.      - Erstellung von Locale-dateien wählbar
  405.      - Erstellung von Storm-projekten wählbar
  406.      - Texteditor verarbeitet Änderungen nun korrekt
  407.      - speichern von Zeichenketten mit einem linefeed ('\n') ist kein Problem mehr
  408.      - amigaguide.library wegen Startschwierigkeiten geöffnet
  409. ---
  410. 4.2  - Objekttabelle ausdrucken ist nun möglich
  411.      - Ausschneiden/Kopieren/Einfügen für Gadgetlisten funktioniert
  412.      - kein Konflikte mit Projekten, die mehere Fenster beinhalten
  413.      - Probleme mit dem Quelltext von Projekten, die mehere Fenster beinhalten behoben
  414.      - Funktion "inttostring" überarbeitet und verkürzt
  415.      - Reaction-Gadgetlisten und Menüliste sind nun tatsächlich hierarchisch (unterstützt hiding und showing)
  416.      - Support für Sprachen bosanski, català, czech, polski, russian, slovensko, srpski and türkçe hinzugefügt
  417.      - Übersetzungen für alle vorgefertigten Menüs hinzugefügt (alle Sprachen)
  418.      - vordefinierte Texte von Requester und ASL-Requester in alle unterstützten Sprachen übersetzt
  419.      - erweitertes, vordefiniertes Menü "Preferences" hinzugefügt
  420.      - Online-Hilfe für alle Programmbereiche und Fenster
  421.      - völlig überarbeitete Guide-dateien
  422.      - Screens-Array mit Vorschau
  423.      - neues Fensterattribut: BackFill (Datei)
  424.      - neues Fensterattribut: Screen
  425.      - neues Bitmapattribut: Screen
  426.      - neues Requesterattribut: Screen
  427.      - überarbeitetes Design des Fensterattribut-Fensters
  428.      - Arrayattribute auf einem Fenster vereinigt
  429.      - Probleme mit InterConnection Maps beseitigt
  430.      - neue Programmumgebungsvariable: Initial geöffneter Screen
  431.      - Makrofunktionen für öffnen/schließen von Screens hinzugefügt
  432.      - wählbare Taskpriorität
  433.      - *.h-Datei in die Stormprojekt-Datei berücksichtigt
  434.      - Stormprojekt-Datei Objektverzeichnis als "StormC:Objects"
  435.      - Übergabe von Funktionen an Texteditor ist nun voreinstellbar
  436.      - Löschen von Objekten mit abschaltbarer Sicherheitsabfrage
  437.      - Template-projekt als ein Ersatz für initial eingebaute Objekte
  438.      - lowlevel-Probleme beseitigt (beim ICMap-generieren und in der Programmierhilfe)
  439.      - beim Speichern auftretende Probleme mit anhängendem "*.project" beseitigt
  440.      - Probleme während des Speicherns in Verzeichnisse beseitigt
  441.      - Button "Bearbeiten" ins Hauptfenster für öffnen/schließen des Attributfensters hinzugefügt
  442.      - Button "Hinzufügen" ist für falsche Zugriffe auf der Reactionseite gesperrt
  443.      - Doppelklick "Mitte" öffnet Attributfenster
  444.      - Library Attributfenster arbeitet nun korrekt
  445.      - Variable Attributfenster mit neuem Verhalten beim akzeptieren von Werten
  446.      - Catalog- und VisualInfo-variablen konfigurierbar
  447.      - Buttons im Hauptfenster bleiben nicht mehr selekiert
  448.      - "Vorschau"- und "Bearbeiten"-Button mit Klammern versehen
  449.      - keine falschen laufenden Nummern hinter verdefinierten Namen mehr
  450.      - keine Notwendigkeit eines "Emperor:"-Assigns mehr
  451.      - Probleme mit Startfortschrittsanzeige behoben
  452.      - Fortschrittsanzeige beim Öffnen von Projekten
  453.      - Funktionen auf Speichersparen getrimmt
  454.      - Vorschau der Getfile-Gadgets überarbeitet
  455.      - neue Mousebutton Events für: - Doppelklick links & mitte;
  456.                                     - links, mitte, rechts in allen Fällen mit gedrückt & losgelassen
  457.      - neue Attribute in Get/SetGadgetAttr(): - GETFILE_FullFile
  458.                                               - GETFONT_TextAttr
  459.                                               - GETSCREENMODE_DisplayID
  460.                                               - und TDECK_Tape
  461. ---
  462. 4.3  - Reaction basierte PopupMenüs
  463.      - Bug in der GadgetHelp im Layout-Attributfenster behoben
  464.      - Array Probleme behoben
  465.      - beachtet CatalogIDs beim hinzufügen
  466.      - Konflikte mit der Rundung der HSMathLibs umgangen
  467.      - Workbench-Start Probleme mit dem initialen Projektverzeichnis behoben
  468.      - merkt sich alle Fensterpositionen
  469.      - neue, überladene inttostring-Funktion
  470.      - Komponentenauswahl während des Öffnens
  471.      - Anhängen von Projekten verursacht keine Probleme mehr
  472.      - unterstützt CyberGraphX und Picasso96 Screens
  473.      - kleinere Fehler behoben
  474. ---
  475. 4.5  - MultiMenü; für jedes Fenster ein eigenes Pulldown-Menü
  476.      - Beschriftung fensterabhängiger Listen (Gadgets und Menü)
  477.      - Überprüfung von Projekten auf logische Fehler
  478.      - Drag'n'Drop von Objekten implementiert
  479.      - volle StormC v4-Unterstützung
  480.      - Kategorie ToolTypes hinzugefügt
  481.      - generieren von Installskripts implementiert
  482.      - Hauptfenster in kleinerem Modus anzeigbar
  483.      - Probleme mit Array-Fenster behoben
  484.      - alle Listen durch Tastatur steuerbar
  485.      - erweitere Einstellungsmöglichkeiten hinzugefügt
  486.      - Nachrichtenbehandlung als hierarchische Liste
  487.      - eigener Screen für Emperor wählbar
  488.      - Probleme mit Previewfenster behoben
  489.      - Projekt-Öffnen-Routinen optimiert
  490.      - Fehler im generierten Source behoben
  491.      - Fortschrittsanzeigen überarbeitet
  492.      - einige Makrofunktionen optimiert
  493.      - generierten Source optimiert
  494.      - Icons für alle Dateien erzeugbar
  495.      - volle AmigaOS3.9-Unterstützung
  496.      - erweiterte Funktionen im Attributfenster
  497.      - verbesserte Programmierhilfe
  498.      - neue Texteditorfunktionen
  499.      - verbesserte Online-Hilfe
  500.      - erweitertes GadgetHelp
  501.      - Initialisierungsfunktionen optimiert
  502.      - kleine Fehler behoben
  503.  
  504.  
  505. Die Einführung
  506.  
  507.  
  508. Objekt-orientierte Programmiersprache (OOP) ist vielleicht ein wenig
  509. zu hoch gegriffen, da weiterhin "echte" C/C++-Quelltexte generiert und
  510. durch einen externen C/C++-Compiler übersetzt werden müssen. Im Amiga-Bereich
  511. gibt's nur wenige Ausnahmen wie CanDo, Storm-Wizard u.a., aber irgendwann habe
  512. ich das Programm "Delphi" auf dem PC :( kennengelernt ! Diese OOP ist
  513. ausschließlich in Pascal gehalten (was mich arg störte) und erschlägt einen
  514. mit den Millionen Konfigurations-möglichkeiten. Ich kannte soetwas in der Art
  515. bisher auf dem Amiga nicht, und kurzentschlossen setzte ich mich selbst daran.
  516.  
  517. Ich wollte die Parametrierung der Oberfläche und der Makro-Elemente so einfach wie
  518. möglich machen. Folgende Standard-Oberflächenelemente sind implementiert:
  519.  * Screens
  520.  * Fenster
  521.  * OS2.0 Gadgets (GadTools)
  522.  * OS3.5 Gadgets (Reaction)
  523.  * Menüs
  524.  * PopupMenüs
  525.  * Requester
  526.  * ASL-Requester
  527.  * Locale-Katalog
  528.  
  529. Folgende Nicht-Oberflächenelemente sind implementiert:
  530.  * vorgefertigte Funktionsmakros, die das Programmieren unter OS3.5 wesentlich erleichtern.
  531.  * Install-Skripts
  532.  * ToolTypes
  533.  * Includes
  534.  * deklarieren von Variablen
  535.  * definierbare Einbindung von Funktions-Bibliotheken
  536.  * InterConnection Maps zwischen Gadgets
  537.  * Datenfelder für Listen von Gadgets
  538.  
  539. Man generiert mit Emperor einen komplett fertigen C/C++-Quelltext, der nur noch
  540. durch einen externen Compiler (z.B. StormC auf der Developer CD2.1) übersetzt werden muss.
  541.  
  542. Ziel dieses Programms soll sein, Softwareentwickler zu überzeugen mit Emperor ihre
  543. Programme (deren Quelltext) zu erstellen, da die Verfahrensweise bei der Erstellung
  544. von Software (Öffnen von Fenstern, Datei- und Schriftauswahlrequestern, Menüs etc.)
  545. oft gleich ist und nicht weiter durch den Programmierer selbst mühsam aus anderen
  546. Quelltexten herausgefischt werden muss. Emperor verfügt für jedes Element schon
  547. ein oder mehrere vorgefertigte, aber veränderbare, Makros. So z.B. bei den Menüs:
  548. hier muss für das Projekt-Menü (Öffnen, Speichern, Drucken etc.) und dessen
  549. Übersetzung (für Locale - ".catalog"-Datei) nur der entsprechende Eintrag
  550. gewählt werden. Dies gilt auch für Requester z.B. für das QuitRequest. Diese müssen
  551. nur noch im eigenen Quelltext als Funktion "REQUESTERNAME();" aufgerufen werden.
  552.  
  553. Das Programm soll aber auch für Amiganer sein, die noch nie programmiert haben,
  554. und so einen einfachen Einstieg in die Programmierung der AmigaOS-Oberfläche bieten.
  555.  
  556.  
  557. Die Systemanforderungen
  558.  
  559.   - einen Amiga ;-)
  560.   - Speicher mindestens 4 MByte; empfohlen 16 MByte oder mehr
  561.   - Workbench Version 3.5 oder höher
  562.   - Prozessor mindestens 68020; empfohlen 68060
  563.   - Amiga Developer CD 2.1 von der HAAGE & Partner GmbH
  564.   - C/C++-Compiler (von der Developer CD "ADCD_2.1:Contributions/Haage_&_Partner/StormC/")
  565.   - CatComp (von der Developer CD "ADCD_2.1:NDK/NDK_3.5/Tools/CatComp")
  566.